///////////////////////////////////////////////////////////////////////////////
//  Copyright Christopher Kormanyos 2019 - 2020.
//  Distributed under the Boost Software License,
//  Version 1.0. (See accompanying file LICENSE_1_0.txt
//  or copy at http://www.boost.org/LICENSE_1_0.txt)
//

#include <algorithm>
#include <cstdint>

#include <math/constants/pi_spigot_state.h>
#include <mcal_memory/mcal_memory_progmem_array.h>
#include <mcal_memory/mcal_memory_sram_array.h>
#include <mcal_pwm.h>
#include <sys/idle/sys_idle_pi_spigot.h>

namespace local
{
  struct control
  {
    static const mcal::memory::progmem::array<std::uint8_t, 10011U> sys_idle_pi_spigot_cntrl MY_PROGMEM;
  };

  using pi_spigot_type = math::constants::pi_spigot_state<1001U, 9U>;

  constexpr mcal_sram_uintptr_t sys_idle_pi_spigot_input_start_address = UINT32_C(0x00000000);
  constexpr mcal_sram_uintptr_t sys_idle_pi_spigot_value_start_address =    sys_idle_pi_spigot_input_start_address
                                                                         + (pi_spigot_type::get_input_static_size() * sizeof(std::uint32_t));

  using pi_spigot_input_type = mcal::memory::sram::array<std::uint32_t,
                                                         pi_spigot_type::get_input_static_size(),
                                                         sys_idle_pi_spigot_input_start_address>;

  using pi_spigot_value_type = mcal::memory::sram::array<std::uint8_t,
                                                         pi_spigot_type::get_output_static_size(),
                                                         sys_idle_pi_spigot_value_start_address>;

  pi_spigot_input_type sys_idle_pi_spigot_input;
  pi_spigot_value_type sys_idle_pi_spigot_value;

  pi_spigot_type sys_idle_pi_spigot_object;

  mcal_sram_uintptr_t sys_idle_pi_spigot_digits;

  bool sys_idle_pi_spigot_result_is_ok = true;

  constexpr std::uint16_t sys_idle_pi_spigot_duty_cycle_min = UINT16_C(4);
  constexpr std::uint16_t sys_idle_pi_spigot_duty_cycle_max = UINT16_C(996);
}

using namespace local;

bool sys::idle::pi_spigot_get_result() noexcept
{
  return sys_idle_pi_spigot_result_is_ok;
}

void sys::idle::pi_spigot_run()
{
  if(sys_idle_pi_spigot_object.is_finished())
  {
    mcal::pwm::pwm0().set_duty(sys_idle_pi_spigot_duty_cycle_min);

    sys_idle_pi_spigot_digits = 0U;

    *sys_idle_pi_spigot_input.data() = 0U;
    *sys_idle_pi_spigot_value.data() = 0U;

    sys_idle_pi_spigot_object.initialize();
  }

  sys_idle_pi_spigot_object.calculate(sys_idle_pi_spigot_input.data(),
                                      sys_idle_pi_spigot_value.data());

  if(sys_idle_pi_spigot_digits != sys_idle_pi_spigot_object.get_output_digit_count())
  {
    {
      const mcal_sram_uintptr_t next_digit_count(  sys_idle_pi_spigot_object.get_output_digit_count()
                                                 - sys_idle_pi_spigot_digits);

      const bool next_digits_are_ok = std::equal(sys_idle_pi_spigot_value.cbegin() + mcal_sram_ptrdiff_t(sys_idle_pi_spigot_digits),
                                                 sys_idle_pi_spigot_value.cbegin() + mcal_sram_ptrdiff_t(sys_idle_pi_spigot_digits + next_digit_count),
                                                 local::control::sys_idle_pi_spigot_cntrl.cbegin() + sys_idle_pi_spigot_digits);

      sys_idle_pi_spigot_digits += next_digit_count;

      sys_idle_pi_spigot_result_is_ok &= next_digits_are_ok;
    }

    {
      const std::uint32_t pi_spigot_digits_times_1000(sys_idle_pi_spigot_digits * 1000UL);

      const std::uint16_t duty_cycle_value =
        static_cast<std::uint16_t>(  pi_spigot_digits_times_1000
                                   / sys_idle_pi_spigot_object.get_output_static_size());

      const std::uint16_t duty_cycle_to_set =
        (std::min)((std::max)(duty_cycle_value, sys_idle_pi_spigot_duty_cycle_min),
                   sys_idle_pi_spigot_duty_cycle_max);

      mcal::pwm::pwm0().set_duty(duty_cycle_to_set);
    }
  }
}

const mcal::memory::progmem::array<std::uint8_t, 10011U> local::control::sys_idle_pi_spigot_cntrl MY_PROGMEM =
{{
  3U,
  1U, 4U, 1U, 5U, 9U, 2U, 6U, 5U, 3U, 5U, 8U, 9U, 7U, 9U, 3U, 2U, 3U, 8U, 4U, 6U, 2U, 6U, 4U, 3U, 3U, 8U, 3U, 2U, 7U, 9U, 5U, 0U, 2U, 8U, 8U, 4U, 1U, 9U, 7U, 1U, 6U, 9U, 3U, 9U, 9U, 3U, 7U, 5U, 1U, 0U, 5U, 8U, 2U, 0U, 9U, 7U, 4U, 9U, 4U, 4U, 5U, 9U, 2U, 3U, 0U, 7U, 8U, 1U, 6U, 4U, 0U, 6U, 2U, 8U, 6U, 2U, 0U, 8U, 9U, 9U, 8U, 6U, 2U, 8U, 0U, 3U, 4U, 8U, 2U, 5U, 3U, 4U, 2U, 1U, 1U, 7U, 0U, 6U, 7U, 9U,
  8U, 2U, 1U, 4U, 8U, 0U, 8U, 6U, 5U, 1U, 3U, 2U, 8U, 2U, 3U, 0U, 6U, 6U, 4U, 7U, 0U, 9U, 3U, 8U, 4U, 4U, 6U, 0U, 9U, 5U, 5U, 0U, 5U, 8U, 2U, 2U, 3U, 1U, 7U, 2U, 5U, 3U, 5U, 9U, 4U, 0U, 8U, 1U, 2U, 8U, 4U, 8U, 1U, 1U, 1U, 7U, 4U, 5U, 0U, 2U, 8U, 4U, 1U, 0U, 2U, 7U, 0U, 1U, 9U, 3U, 8U, 5U, 2U, 1U, 1U, 0U, 5U, 5U, 5U, 9U, 6U, 4U, 4U, 6U, 2U, 2U, 9U, 4U, 8U, 9U, 5U, 4U, 9U, 3U, 0U, 3U, 8U, 1U, 9U, 6U,
  4U, 4U, 2U, 8U, 8U, 1U, 0U, 9U, 7U, 5U, 6U, 6U, 5U, 9U, 3U, 3U, 4U, 4U, 6U, 1U, 2U, 8U, 4U, 7U, 5U, 6U, 4U, 8U, 2U, 3U, 3U, 7U, 8U, 6U, 7U, 8U, 3U, 1U, 6U, 5U, 2U, 7U, 1U, 2U, 0U, 1U, 9U, 0U, 9U, 1U, 4U, 5U, 6U, 4U, 8U, 5U, 6U, 6U, 9U, 2U, 3U, 4U, 6U, 0U, 3U, 4U, 8U, 6U, 1U, 0U, 4U, 5U, 4U, 3U, 2U, 6U, 6U, 4U, 8U, 2U, 1U, 3U, 3U, 9U, 3U, 6U, 0U, 7U, 2U, 6U, 0U, 2U, 4U, 9U, 1U, 4U, 1U, 2U, 7U, 3U,
  7U, 2U, 4U, 5U, 8U, 7U, 0U, 0U, 6U, 6U, 0U, 6U, 3U, 1U, 5U, 5U, 8U, 8U, 1U, 7U, 4U, 8U, 8U, 1U, 5U, 2U, 0U, 9U, 2U, 0U, 9U, 6U, 2U, 8U, 2U, 9U, 2U, 5U, 4U, 0U, 9U, 1U, 7U, 1U, 5U, 3U, 6U, 4U, 3U, 6U, 7U, 8U, 9U, 2U, 5U, 9U, 0U, 3U, 6U, 0U, 0U, 1U, 1U, 3U, 3U, 0U, 5U, 3U, 0U, 5U, 4U, 8U, 8U, 2U, 0U, 4U, 6U, 6U, 5U, 2U, 1U, 3U, 8U, 4U, 1U, 4U, 6U, 9U, 5U, 1U, 9U, 4U, 1U, 5U, 1U, 1U, 6U, 0U, 9U, 4U,
  3U, 3U, 0U, 5U, 7U, 2U, 7U, 0U, 3U, 6U, 5U, 7U, 5U, 9U, 5U, 9U, 1U, 9U, 5U, 3U, 0U, 9U, 2U, 1U, 8U, 6U, 1U, 1U, 7U, 3U, 8U, 1U, 9U, 3U, 2U, 6U, 1U, 1U, 7U, 9U, 3U, 1U, 0U, 5U, 1U, 1U, 8U, 5U, 4U, 8U, 0U, 7U, 4U, 4U, 6U, 2U, 3U, 7U, 9U, 9U, 6U, 2U, 7U, 4U, 9U, 5U, 6U, 7U, 3U, 5U, 1U, 8U, 8U, 5U, 7U, 5U, 2U, 7U, 2U, 4U, 8U, 9U, 1U, 2U, 2U, 7U, 9U, 3U, 8U, 1U, 8U, 3U, 0U, 1U, 1U, 9U, 4U, 9U, 1U, 2U,
  9U, 8U, 3U, 3U, 6U, 7U, 3U, 3U, 6U, 2U, 4U, 4U, 0U, 6U, 5U, 6U, 6U, 4U, 3U, 0U, 8U, 6U, 0U, 2U, 1U, 3U, 9U, 4U, 9U, 4U, 6U, 3U, 9U, 5U, 2U, 2U, 4U, 7U, 3U, 7U, 1U, 9U, 0U, 7U, 0U, 2U, 1U, 7U, 9U, 8U, 6U, 0U, 9U, 4U, 3U, 7U, 0U, 2U, 7U, 7U, 0U, 5U, 3U, 9U, 2U, 1U, 7U, 1U, 7U, 6U, 2U, 9U, 3U, 1U, 7U, 6U, 7U, 5U, 2U, 3U, 8U, 4U, 6U, 7U, 4U, 8U, 1U, 8U, 4U, 6U, 7U, 6U, 6U, 9U, 4U, 0U, 5U, 1U, 3U, 2U,
  0U, 0U, 0U, 5U, 6U, 8U, 1U, 2U, 7U, 1U, 4U, 5U, 2U, 6U, 3U, 5U, 6U, 0U, 8U, 2U, 7U, 7U, 8U, 5U, 7U, 7U, 1U, 3U, 4U, 2U, 7U, 5U, 7U, 7U, 8U, 9U, 6U, 0U, 9U, 1U, 7U, 3U, 6U, 3U, 7U, 1U, 7U, 8U, 7U, 2U, 1U, 4U, 6U, 8U, 4U, 4U, 0U, 9U, 0U, 1U, 2U, 2U, 4U, 9U, 5U, 3U, 4U, 3U, 0U, 1U, 4U, 6U, 5U, 4U, 9U, 5U, 8U, 5U, 3U, 7U, 1U, 0U, 5U, 0U, 7U, 9U, 2U, 2U, 7U, 9U, 6U, 8U, 9U, 2U, 5U, 8U, 9U, 2U, 3U, 5U,
  4U, 2U, 0U, 1U, 9U, 9U, 5U, 6U, 1U, 1U, 2U, 1U, 2U, 9U, 0U, 2U, 1U, 9U, 6U, 0U, 8U, 6U, 4U, 0U, 3U, 4U, 4U, 1U, 8U, 1U, 5U, 9U, 8U, 1U, 3U, 6U, 2U, 9U, 7U, 7U, 4U, 7U, 7U, 1U, 3U, 0U, 9U, 9U, 6U, 0U, 5U, 1U, 8U, 7U, 0U, 7U, 2U, 1U, 1U, 3U, 4U, 9U, 9U, 9U, 9U, 9U, 9U, 8U, 3U, 7U, 2U, 9U, 7U, 8U, 0U, 4U, 9U, 9U, 5U, 1U, 0U, 5U, 9U, 7U, 3U, 1U, 7U, 3U, 2U, 8U, 1U, 6U, 0U, 9U, 6U, 3U, 1U, 8U, 5U, 9U,
  5U, 0U, 2U, 4U, 4U, 5U, 9U, 4U, 5U, 5U, 3U, 4U, 6U, 9U, 0U, 8U, 3U, 0U, 2U, 6U, 4U, 2U, 5U, 2U, 2U, 3U, 0U, 8U, 2U, 5U, 3U, 3U, 4U, 4U, 6U, 8U, 5U, 0U, 3U, 5U, 2U, 6U, 1U, 9U, 3U, 1U, 1U, 8U, 8U, 1U, 7U, 1U, 0U, 1U, 0U, 0U, 0U, 3U, 1U, 3U, 7U, 8U, 3U, 8U, 7U, 5U, 2U, 8U, 8U, 6U, 5U, 8U, 7U, 5U, 3U, 3U, 2U, 0U, 8U, 3U, 8U, 1U, 4U, 2U, 0U, 6U, 1U, 7U, 1U, 7U, 7U, 6U, 6U, 9U, 1U, 4U, 7U, 3U, 0U, 3U,
  5U, 9U, 8U, 2U, 5U, 3U, 4U, 9U, 0U, 4U, 2U, 8U, 7U, 5U, 5U, 4U, 6U, 8U, 7U, 3U, 1U, 1U, 5U, 9U, 5U, 6U, 2U, 8U, 6U, 3U, 8U, 8U, 2U, 3U, 5U, 3U, 7U, 8U, 7U, 5U, 9U, 3U, 7U, 5U, 1U, 9U, 5U, 7U, 7U, 8U, 1U, 8U, 5U, 7U, 7U, 8U, 0U, 5U, 3U, 2U, 1U, 7U, 1U, 2U, 2U, 6U, 8U, 0U, 6U, 6U, 1U, 3U, 0U, 0U, 1U, 9U, 2U, 7U, 8U, 7U, 6U, 6U, 1U, 1U, 1U, 9U, 5U, 9U, 0U, 9U, 2U, 1U, 6U, 4U, 2U, 0U, 1U, 9U, 8U, 9U,
  3U, 8U, 0U, 9U, 5U, 2U, 5U, 7U, 2U, 0U, 1U, 0U, 6U, 5U, 4U, 8U, 5U, 8U, 6U, 3U, 2U, 7U, 8U, 8U, 6U, 5U, 9U, 3U, 6U, 1U, 5U, 3U, 3U, 8U, 1U, 8U, 2U, 7U, 9U, 6U, 8U, 2U, 3U, 0U, 3U, 0U, 1U, 9U, 5U, 2U, 0U, 3U, 5U, 3U, 0U, 1U, 8U, 5U, 2U, 9U, 6U, 8U, 9U, 9U, 5U, 7U, 7U, 3U, 6U, 2U, 2U, 5U, 9U, 9U, 4U, 1U, 3U, 8U, 9U, 1U, 2U, 4U, 9U, 7U, 2U, 1U, 7U, 7U, 5U, 2U, 8U, 3U, 4U, 7U, 9U, 1U, 3U, 1U, 5U, 1U,
  5U, 5U, 7U, 4U, 8U, 5U, 7U, 2U, 4U, 2U, 4U, 5U, 4U, 1U, 5U, 0U, 6U, 9U, 5U, 9U, 5U, 0U, 8U, 2U, 9U, 5U, 3U, 3U, 1U, 1U, 6U, 8U, 6U, 1U, 7U, 2U, 7U, 8U, 5U, 5U, 8U, 8U, 9U, 0U, 7U, 5U, 0U, 9U, 8U, 3U, 8U, 1U, 7U, 5U, 4U, 6U, 3U, 7U, 4U, 6U, 4U, 9U, 3U, 9U, 3U, 1U, 9U, 2U, 5U, 5U, 0U, 6U, 0U, 4U, 0U, 0U, 9U, 2U, 7U, 7U, 0U, 1U, 6U, 7U, 1U, 1U, 3U, 9U, 0U, 0U, 9U, 8U, 4U, 8U, 8U, 2U, 4U, 0U, 1U, 2U,
  8U, 5U, 8U, 3U, 6U, 1U, 6U, 0U, 3U, 5U, 6U, 3U, 7U, 0U, 7U, 6U, 6U, 0U, 1U, 0U, 4U, 7U, 1U, 0U, 1U, 8U, 1U, 9U, 4U, 2U, 9U, 5U, 5U, 5U, 9U, 6U, 1U, 9U, 8U, 9U, 4U, 6U, 7U, 6U, 7U, 8U, 3U, 7U, 4U, 4U, 9U, 4U, 4U, 8U, 2U, 5U, 5U, 3U, 7U, 9U, 7U, 7U, 4U, 7U, 2U, 6U, 8U, 4U, 7U, 1U, 0U, 4U, 0U, 4U, 7U, 5U, 3U, 4U, 6U, 4U, 6U, 2U, 0U, 8U, 0U, 4U, 6U, 6U, 8U, 4U, 2U, 5U, 9U, 0U, 6U, 9U, 4U, 9U, 1U, 2U,
  9U, 3U, 3U, 1U, 3U, 6U, 7U, 7U, 0U, 2U, 8U, 9U, 8U, 9U, 1U, 5U, 2U, 1U, 0U, 4U, 7U, 5U, 2U, 1U, 6U, 2U, 0U, 5U, 6U, 9U, 6U, 6U, 0U, 2U, 4U, 0U, 5U, 8U, 0U, 3U, 8U, 1U, 5U, 0U, 1U, 9U, 3U, 5U, 1U, 1U, 2U, 5U, 3U, 3U, 8U, 2U, 4U, 3U, 0U, 0U, 3U, 5U, 5U, 8U, 7U, 6U, 4U, 0U, 2U, 4U, 7U, 4U, 9U, 6U, 4U, 7U, 3U, 2U, 6U, 3U, 9U, 1U, 4U, 1U, 9U, 9U, 2U, 7U, 2U, 6U, 0U, 4U, 2U, 6U, 9U, 9U, 2U, 2U, 7U, 9U,
  6U, 7U, 8U, 2U, 3U, 5U, 4U, 7U, 8U, 1U, 6U, 3U, 6U, 0U, 0U, 9U, 3U, 4U, 1U, 7U, 2U, 1U, 6U, 4U, 1U, 2U, 1U, 9U, 9U, 2U, 4U, 5U, 8U, 6U, 3U, 1U, 5U, 0U, 3U, 0U, 2U, 8U, 6U, 1U, 8U, 2U, 9U, 7U, 4U, 5U, 5U, 5U, 7U, 0U, 6U, 7U, 4U, 9U, 8U, 3U, 8U, 5U, 0U, 5U, 4U, 9U, 4U, 5U, 8U, 8U, 5U, 8U, 6U, 9U, 2U, 6U, 9U, 9U, 5U, 6U, 9U, 0U, 9U, 2U, 7U, 2U, 1U, 0U, 7U, 9U, 7U, 5U, 0U, 9U, 3U, 0U, 2U, 9U, 5U, 5U,
  3U, 2U, 1U, 1U, 6U, 5U, 3U, 4U, 4U, 9U, 8U, 7U, 2U, 0U, 2U, 7U, 5U, 5U, 9U, 6U, 0U, 2U, 3U, 6U, 4U, 8U, 0U, 6U, 6U, 5U, 4U, 9U, 9U, 1U, 1U, 9U, 8U, 8U, 1U, 8U, 3U, 4U, 7U, 9U, 7U, 7U, 5U, 3U, 5U, 6U, 6U, 3U, 6U, 9U, 8U, 0U, 7U, 4U, 2U, 6U, 5U, 4U, 2U, 5U, 2U, 7U, 8U, 6U, 2U, 5U, 5U, 1U, 8U, 1U, 8U, 4U, 1U, 7U, 5U, 7U, 4U, 6U, 7U, 2U, 8U, 9U, 0U, 9U, 7U, 7U, 7U, 7U, 2U, 7U, 9U, 3U, 8U, 0U, 0U, 0U,
  8U, 1U, 6U, 4U, 7U, 0U, 6U, 0U, 0U, 1U, 6U, 1U, 4U, 5U, 2U, 4U, 9U, 1U, 9U, 2U, 1U, 7U, 3U, 2U, 1U, 7U, 2U, 1U, 4U, 7U, 7U, 2U, 3U, 5U, 0U, 1U, 4U, 1U, 4U, 4U, 1U, 9U, 7U, 3U, 5U, 6U, 8U, 5U, 4U, 8U, 1U, 6U, 1U, 3U, 6U, 1U, 1U, 5U, 7U, 3U, 5U, 2U, 5U, 5U, 2U, 1U, 3U, 3U, 4U, 7U, 5U, 7U, 4U, 1U, 8U, 4U, 9U, 4U, 6U, 8U, 4U, 3U, 8U, 5U, 2U, 3U, 3U, 2U, 3U, 9U, 0U, 7U, 3U, 9U, 4U, 1U, 4U, 3U, 3U, 3U,
  4U, 5U, 4U, 7U, 7U, 6U, 2U, 4U, 1U, 6U, 8U, 6U, 2U, 5U, 1U, 8U, 9U, 8U, 3U, 5U, 6U, 9U, 4U, 8U, 5U, 5U, 6U, 2U, 0U, 9U, 9U, 2U, 1U, 9U, 2U, 2U, 2U, 1U, 8U, 4U, 2U, 7U, 2U, 5U, 5U, 0U, 2U, 5U, 4U, 2U, 5U, 6U, 8U, 8U, 7U, 6U, 7U, 1U, 7U, 9U, 0U, 4U, 9U, 4U, 6U, 0U, 1U, 6U, 5U, 3U, 4U, 6U, 6U, 8U, 0U, 4U, 9U, 8U, 8U, 6U, 2U, 7U, 2U, 3U, 2U, 7U, 9U, 1U, 7U, 8U, 6U, 0U, 8U, 5U, 7U, 8U, 4U, 3U, 8U, 3U,
  8U, 2U, 7U, 9U, 6U, 7U, 9U, 7U, 6U, 6U, 8U, 1U, 4U, 5U, 4U, 1U, 0U, 0U, 9U, 5U, 3U, 8U, 8U, 3U, 7U, 8U, 6U, 3U, 6U, 0U, 9U, 5U, 0U, 6U, 8U, 0U, 0U, 6U, 4U, 2U, 2U, 5U, 1U, 2U, 5U, 2U, 0U, 5U, 1U, 1U, 7U, 3U, 9U, 2U, 9U, 8U, 4U, 8U, 9U, 6U, 0U, 8U, 4U, 1U, 2U, 8U, 4U, 8U, 8U, 6U, 2U, 6U, 9U, 4U, 5U, 6U, 0U, 4U, 2U, 4U, 1U, 9U, 6U, 5U, 2U, 8U, 5U, 0U, 2U, 2U, 2U, 1U, 0U, 6U, 6U, 1U, 1U, 8U, 6U, 3U,
  0U, 6U, 7U, 4U, 4U, 2U, 7U, 8U, 6U, 2U, 2U, 0U, 3U, 9U, 1U, 9U, 4U, 9U, 4U, 5U, 0U, 4U, 7U, 1U, 2U, 3U, 7U, 1U, 3U, 7U, 8U, 6U, 9U, 6U, 0U, 9U, 5U, 6U, 3U, 6U, 4U, 3U, 7U, 1U, 9U, 1U, 7U, 2U, 8U, 7U, 4U, 6U, 7U, 7U, 6U, 4U, 6U, 5U, 7U, 5U, 7U, 3U, 9U, 6U, 2U, 4U, 1U, 3U, 8U, 9U, 0U, 8U, 6U, 5U, 8U, 3U, 2U, 6U, 4U, 5U, 9U, 9U, 5U, 8U, 1U, 3U, 3U, 9U, 0U, 4U, 7U, 8U, 0U, 2U, 7U, 5U, 9U, 0U, 0U, 9U,
  9U, 4U, 6U, 5U, 7U, 6U, 4U, 0U, 7U, 8U, 9U, 5U, 1U, 2U, 6U, 9U, 4U, 6U, 8U, 3U, 9U, 8U, 3U, 5U, 2U, 5U, 9U, 5U, 7U, 0U, 9U, 8U, 2U, 5U, 8U, 2U, 2U, 6U, 2U, 0U, 5U, 2U, 2U, 4U, 8U, 9U, 4U, 0U, 7U, 7U, 2U, 6U, 7U, 1U, 9U, 4U, 7U, 8U, 2U, 6U, 8U, 4U, 8U, 2U, 6U, 0U, 1U, 4U, 7U, 6U, 9U, 9U, 0U, 9U, 0U, 2U, 6U, 4U, 0U, 1U, 3U, 6U, 3U, 9U, 4U, 4U, 3U, 7U, 4U, 5U, 5U, 3U, 0U, 5U, 0U, 6U, 8U, 2U, 0U, 3U,
  4U, 9U, 6U, 2U, 5U, 2U, 4U, 5U, 1U, 7U, 4U, 9U, 3U, 9U, 9U, 6U, 5U, 1U, 4U, 3U, 1U, 4U, 2U, 9U, 8U, 0U, 9U, 1U, 9U, 0U, 6U, 5U, 9U, 2U, 5U, 0U, 9U, 3U, 7U, 2U, 2U, 1U, 6U, 9U, 6U, 4U, 6U, 1U, 5U, 1U, 5U, 7U, 0U, 9U, 8U, 5U, 8U, 3U, 8U, 7U, 4U, 1U, 0U, 5U, 9U, 7U, 8U, 8U, 5U, 9U, 5U, 9U, 7U, 7U, 2U, 9U, 7U, 5U, 4U, 9U, 8U, 9U, 3U, 0U, 1U, 6U, 1U, 7U, 5U, 3U, 9U, 2U, 8U, 4U, 6U, 8U, 1U, 3U, 8U, 2U,
  6U, 8U, 6U, 8U, 3U, 8U, 6U, 8U, 9U, 4U, 2U, 7U, 7U, 4U, 1U, 5U, 5U, 9U, 9U, 1U, 8U, 5U, 5U, 9U, 2U, 5U, 2U, 4U, 5U, 9U, 5U, 3U, 9U, 5U, 9U, 4U, 3U, 1U, 0U, 4U, 9U, 9U, 7U, 2U, 5U, 2U, 4U, 6U, 8U, 0U, 8U, 4U, 5U, 9U, 8U, 7U, 2U, 7U, 3U, 6U, 4U, 4U, 6U, 9U, 5U, 8U, 4U, 8U, 6U, 5U, 3U, 8U, 3U, 6U, 7U, 3U, 6U, 2U, 2U, 2U, 6U, 2U, 6U, 0U, 9U, 9U, 1U, 2U, 4U, 6U, 0U, 8U, 0U, 5U, 1U, 2U, 4U, 3U, 8U, 8U,
  4U, 3U, 9U, 0U, 4U, 5U, 1U, 2U, 4U, 4U, 1U, 3U, 6U, 5U, 4U, 9U, 7U, 6U, 2U, 7U, 8U, 0U, 7U, 9U, 7U, 7U, 1U, 5U, 6U, 9U, 1U, 4U, 3U, 5U, 9U, 9U, 7U, 7U, 0U, 0U, 1U, 2U, 9U, 6U, 1U, 6U, 0U, 8U, 9U, 4U, 4U, 1U, 6U, 9U, 4U, 8U, 6U, 8U, 5U, 5U, 5U, 8U, 4U, 8U, 4U, 0U, 6U, 3U, 5U, 3U, 4U, 2U, 2U, 0U, 7U, 2U, 2U, 2U, 5U, 8U, 2U, 8U, 4U, 8U, 8U, 6U, 4U, 8U, 1U, 5U, 8U, 4U, 5U, 6U, 0U, 2U, 8U, 5U, 0U, 6U,
  0U, 1U, 6U, 8U, 4U, 2U, 7U, 3U, 9U, 4U, 5U, 2U, 2U, 6U, 7U, 4U, 6U, 7U, 6U, 7U, 8U, 8U, 9U, 5U, 2U, 5U, 2U, 1U, 3U, 8U, 5U, 2U, 2U, 5U, 4U, 9U, 9U, 5U, 4U, 6U, 6U, 6U, 7U, 2U, 7U, 8U, 2U, 3U, 9U, 8U, 6U, 4U, 5U, 6U, 5U, 9U, 6U, 1U, 1U, 6U, 3U, 5U, 4U, 8U, 8U, 6U, 2U, 3U, 0U, 5U, 7U, 7U, 4U, 5U, 6U, 4U, 9U, 8U, 0U, 3U, 5U, 5U, 9U, 3U, 6U, 3U, 4U, 5U, 6U, 8U, 1U, 7U, 4U, 3U, 2U, 4U, 1U, 1U, 2U, 5U,
  1U, 5U, 0U, 7U, 6U, 0U, 6U, 9U, 4U, 7U, 9U, 4U, 5U, 1U, 0U, 9U, 6U, 5U, 9U, 6U, 0U, 9U, 4U, 0U, 2U, 5U, 2U, 2U, 8U, 8U, 7U, 9U, 7U, 1U, 0U, 8U, 9U, 3U, 1U, 4U, 5U, 6U, 6U, 9U, 1U, 3U, 6U, 8U, 6U, 7U, 2U, 2U, 8U, 7U, 4U, 8U, 9U, 4U, 0U, 5U, 6U, 0U, 1U, 0U, 1U, 5U, 0U, 3U, 3U, 0U, 8U, 6U, 1U, 7U, 9U, 2U, 8U, 6U, 8U, 0U, 9U, 2U, 0U, 8U, 7U, 4U, 7U, 6U, 0U, 9U, 1U, 7U, 8U, 2U, 4U, 9U, 3U, 8U, 5U, 8U,
  9U, 0U, 0U, 9U, 7U, 1U, 4U, 9U, 0U, 9U, 6U, 7U, 5U, 9U, 8U, 5U, 2U, 6U, 1U, 3U, 6U, 5U, 5U, 4U, 9U, 7U, 8U, 1U, 8U, 9U, 3U, 1U, 2U, 9U, 7U, 8U, 4U, 8U, 2U, 1U, 6U, 8U, 2U, 9U, 9U, 8U, 9U, 4U, 8U, 7U, 2U, 2U, 6U, 5U, 8U, 8U, 0U, 4U, 8U, 5U, 7U, 5U, 6U, 4U, 0U, 1U, 4U, 2U, 7U, 0U, 4U, 7U, 7U, 5U, 5U, 5U, 1U, 3U, 2U, 3U, 7U, 9U, 6U, 4U, 1U, 4U, 5U, 1U, 5U, 2U, 3U, 7U, 4U, 6U, 2U, 3U, 4U, 3U, 6U, 4U,
  5U, 4U, 2U, 8U, 5U, 8U, 4U, 4U, 4U, 7U, 9U, 5U, 2U, 6U, 5U, 8U, 6U, 7U, 8U, 2U, 1U, 0U, 5U, 1U, 1U, 4U, 1U, 3U, 5U, 4U, 7U, 3U, 5U, 7U, 3U, 9U, 5U, 2U, 3U, 1U, 1U, 3U, 4U, 2U, 7U, 1U, 6U, 6U, 1U, 0U, 2U, 1U, 3U, 5U, 9U, 6U, 9U, 5U, 3U, 6U, 2U, 3U, 1U, 4U, 4U, 2U, 9U, 5U, 2U, 4U, 8U, 4U, 9U, 3U, 7U, 1U, 8U, 7U, 1U, 1U, 0U, 1U, 4U, 5U, 7U, 6U, 5U, 4U, 0U, 3U, 5U, 9U, 0U, 2U, 7U, 9U, 9U, 3U, 4U, 4U,
  0U, 3U, 7U, 4U, 2U, 0U, 0U, 7U, 3U, 1U, 0U, 5U, 7U, 8U, 5U, 3U, 9U, 0U, 6U, 2U, 1U, 9U, 8U, 3U, 8U, 7U, 4U, 4U, 7U, 8U, 0U, 8U, 4U, 7U, 8U, 4U, 8U, 9U, 6U, 8U, 3U, 3U, 2U, 1U, 4U, 4U, 5U, 7U, 1U, 3U, 8U, 6U, 8U, 7U, 5U, 1U, 9U, 4U, 3U, 5U, 0U, 6U, 4U, 3U, 0U, 2U, 1U, 8U, 4U, 5U, 3U, 1U, 9U, 1U, 0U, 4U, 8U, 4U, 8U, 1U, 0U, 0U, 5U, 3U, 7U, 0U, 6U, 1U, 4U, 6U, 8U, 0U, 6U, 7U, 4U, 9U, 1U, 9U, 2U, 7U,
  8U, 1U, 9U, 1U, 1U, 9U, 7U, 9U, 3U, 9U, 9U, 5U, 2U, 0U, 6U, 1U, 4U, 1U, 9U, 6U, 6U, 3U, 4U, 2U, 8U, 7U, 5U, 4U, 4U, 4U, 0U, 6U, 4U, 3U, 7U, 4U, 5U, 1U, 2U, 3U, 7U, 1U, 8U, 1U, 9U, 2U, 1U, 7U, 9U, 9U, 9U, 8U, 3U, 9U, 1U, 0U, 1U, 5U, 9U, 1U, 9U, 5U, 6U, 1U, 8U, 1U, 4U, 6U, 7U, 5U, 1U, 4U, 2U, 6U, 9U, 1U, 2U, 3U, 9U, 7U, 4U, 8U, 9U, 4U, 0U, 9U, 0U, 7U, 1U, 8U, 6U, 4U, 9U, 4U, 2U, 3U, 1U, 9U, 6U, 1U,
  5U, 6U, 7U, 9U, 4U, 5U, 2U, 0U, 8U, 0U, 9U, 5U, 1U, 4U, 6U, 5U, 5U, 0U, 2U, 2U, 5U, 2U, 3U, 1U, 6U, 0U, 3U, 8U, 8U, 1U, 9U, 3U, 0U, 1U, 4U, 2U, 0U, 9U, 3U, 7U, 6U, 2U, 1U, 3U, 7U, 8U, 5U, 5U, 9U, 5U, 6U, 6U, 3U, 8U, 9U, 3U, 7U, 7U, 8U, 7U, 0U, 8U, 3U, 0U, 3U, 9U, 0U, 6U, 9U, 7U, 9U, 2U, 0U, 7U, 7U, 3U, 4U, 6U, 7U, 2U, 2U, 1U, 8U, 2U, 5U, 6U, 2U, 5U, 9U, 9U, 6U, 6U, 1U, 5U, 0U, 1U, 4U, 2U, 1U, 5U,
  0U, 3U, 0U, 6U, 8U, 0U, 3U, 8U, 4U, 4U, 7U, 7U, 3U, 4U, 5U, 4U, 9U, 2U, 0U, 2U, 6U, 0U, 5U, 4U, 1U, 4U, 6U, 6U, 5U, 9U, 2U, 5U, 2U, 0U, 1U, 4U, 9U, 7U, 4U, 4U, 2U, 8U, 5U, 0U, 7U, 3U, 2U, 5U, 1U, 8U, 6U, 6U, 6U, 0U, 0U, 2U, 1U, 3U, 2U, 4U, 3U, 4U, 0U, 8U, 8U, 1U, 9U, 0U, 7U, 1U, 0U, 4U, 8U, 6U, 3U, 3U, 1U, 7U, 3U, 4U, 6U, 4U, 9U, 6U, 5U, 1U, 4U, 5U, 3U, 9U, 0U, 5U, 7U, 9U, 6U, 2U, 6U, 8U, 5U, 6U,
  1U, 0U, 0U, 5U, 5U, 0U, 8U, 1U, 0U, 6U, 6U, 5U, 8U, 7U, 9U, 6U, 9U, 9U, 8U, 1U, 6U, 3U, 5U, 7U, 4U, 7U, 3U, 6U, 3U, 8U, 4U, 0U, 5U, 2U, 5U, 7U, 1U, 4U, 5U, 9U, 1U, 0U, 2U, 8U, 9U, 7U, 0U, 6U, 4U, 1U, 4U, 0U, 1U, 1U, 0U, 9U, 7U, 1U, 2U, 0U, 6U, 2U, 8U, 0U, 4U, 3U, 9U, 0U, 3U, 9U, 7U, 5U, 9U, 5U, 1U, 5U, 6U, 7U, 7U, 1U, 5U, 7U, 7U, 0U, 0U, 4U, 2U, 0U, 3U, 3U, 7U, 8U, 6U, 9U, 9U, 3U, 6U, 0U, 0U, 7U,
  2U, 3U, 0U, 5U, 5U, 8U, 7U, 6U, 3U, 1U, 7U, 6U, 3U, 5U, 9U, 4U, 2U, 1U, 8U, 7U, 3U, 1U, 2U, 5U, 1U, 4U, 7U, 1U, 2U, 0U, 5U, 3U, 2U, 9U, 2U, 8U, 1U, 9U, 1U, 8U, 2U, 6U, 1U, 8U, 6U, 1U, 2U, 5U, 8U, 6U, 7U, 3U, 2U, 1U, 5U, 7U, 9U, 1U, 9U, 8U, 4U, 1U, 4U, 8U, 4U, 8U, 8U, 2U, 9U, 1U, 6U, 4U, 4U, 7U, 0U, 6U, 0U, 9U, 5U, 7U, 5U, 2U, 7U, 0U, 6U, 9U, 5U, 7U, 2U, 2U, 0U, 9U, 1U, 7U, 5U, 6U, 7U, 1U, 1U, 6U,
  7U, 2U, 2U, 9U, 1U, 0U, 9U, 8U, 1U, 6U, 9U, 0U, 9U, 1U, 5U, 2U, 8U, 0U, 1U, 7U, 3U, 5U, 0U, 6U, 7U, 1U, 2U, 7U, 4U, 8U, 5U, 8U, 3U, 2U, 2U, 2U, 8U, 7U, 1U, 8U, 3U, 5U, 2U, 0U, 9U, 3U, 5U, 3U, 9U, 6U, 5U, 7U, 2U, 5U, 1U, 2U, 1U, 0U, 8U, 3U, 5U, 7U, 9U, 1U, 5U, 1U, 3U, 6U, 9U, 8U, 8U, 2U, 0U, 9U, 1U, 4U, 4U, 4U, 2U, 1U, 0U, 0U, 6U, 7U, 5U, 1U, 0U, 3U, 3U, 4U, 6U, 7U, 1U, 1U, 0U, 3U, 1U, 4U, 1U, 2U,
  6U, 7U, 1U, 1U, 1U, 3U, 6U, 9U, 9U, 0U, 8U, 6U, 5U, 8U, 5U, 1U, 6U, 3U, 9U, 8U, 3U, 1U, 5U, 0U, 1U, 9U, 7U, 0U, 1U, 6U, 5U, 1U, 5U, 1U, 1U, 6U, 8U, 5U, 1U, 7U, 1U, 4U, 3U, 7U, 6U, 5U, 7U, 6U, 1U, 8U, 3U, 5U, 1U, 5U, 5U, 6U, 5U, 0U, 8U, 8U, 4U, 9U, 0U, 9U, 9U, 8U, 9U, 8U, 5U, 9U, 9U, 8U, 2U, 3U, 8U, 7U, 3U, 4U, 5U, 5U, 2U, 8U, 3U, 3U, 1U, 6U, 3U, 5U, 5U, 0U, 7U, 6U, 4U, 7U, 9U, 1U, 8U, 5U, 3U, 5U,
  8U, 9U, 3U, 2U, 2U, 6U, 1U, 8U, 5U, 4U, 8U, 9U, 6U, 3U, 2U, 1U, 3U, 2U, 9U, 3U, 3U, 0U, 8U, 9U, 8U, 5U, 7U, 0U, 6U, 4U, 2U, 0U, 4U, 6U, 7U, 5U, 2U, 5U, 9U, 0U, 7U, 0U, 9U, 1U, 5U, 4U, 8U, 1U, 4U, 1U, 6U, 5U, 4U, 9U, 8U, 5U, 9U, 4U, 6U, 1U, 6U, 3U, 7U, 1U, 8U, 0U, 2U, 7U, 0U, 9U, 8U, 1U, 9U, 9U, 4U, 3U, 0U, 9U, 9U, 2U, 4U, 4U, 8U, 8U, 9U, 5U, 7U, 5U, 7U, 1U, 2U, 8U, 2U, 8U, 9U, 0U, 5U, 9U, 2U, 3U,
  2U, 3U, 3U, 2U, 6U, 0U, 9U, 7U, 2U, 9U, 9U, 7U, 1U, 2U, 0U, 8U, 4U, 4U, 3U, 3U, 5U, 7U, 3U, 2U, 6U, 5U, 4U, 8U, 9U, 3U, 8U, 2U, 3U, 9U, 1U, 1U, 9U, 3U, 2U, 5U, 9U, 7U, 4U, 6U, 3U, 6U, 6U, 7U, 3U, 0U, 5U, 8U, 3U, 6U, 0U, 4U, 1U, 4U, 2U, 8U, 1U, 3U, 8U, 8U, 3U, 0U, 3U, 2U, 0U, 3U, 8U, 2U, 4U, 9U, 0U, 3U, 7U, 5U, 8U, 9U, 8U, 5U, 2U, 4U, 3U, 7U, 4U, 4U, 1U, 7U, 0U, 2U, 9U, 1U, 3U, 2U, 7U, 6U, 5U, 6U,
  1U, 8U, 0U, 9U, 3U, 7U, 7U, 3U, 4U, 4U, 4U, 0U, 3U, 0U, 7U, 0U, 7U, 4U, 6U, 9U, 2U, 1U, 1U, 2U, 0U, 1U, 9U, 1U, 3U, 0U, 2U, 0U, 3U, 3U, 0U, 3U, 8U, 0U, 1U, 9U, 7U, 6U, 2U, 1U, 1U, 0U, 1U, 1U, 0U, 0U, 4U, 4U, 9U, 2U, 9U, 3U, 2U, 1U, 5U, 1U, 6U, 0U, 8U, 4U, 2U, 4U, 4U, 4U, 8U, 5U, 9U, 6U, 3U, 7U, 6U, 6U, 9U, 8U, 3U, 8U, 9U, 5U, 2U, 2U, 8U, 6U, 8U, 4U, 7U, 8U, 3U, 1U, 2U, 3U, 5U, 5U, 2U, 6U, 5U, 8U,
  2U, 1U, 3U, 1U, 4U, 4U, 9U, 5U, 7U, 6U, 8U, 5U, 7U, 2U, 6U, 2U, 4U, 3U, 3U, 4U, 4U, 1U, 8U, 9U, 3U, 0U, 3U, 9U, 6U, 8U, 6U, 4U, 2U, 6U, 2U, 4U, 3U, 4U, 1U, 0U, 7U, 7U, 3U, 2U, 2U, 6U, 9U, 7U, 8U, 0U, 2U, 8U, 0U, 7U, 3U, 1U, 8U, 9U, 1U, 5U, 4U, 4U, 1U, 1U, 0U, 1U, 0U, 4U, 4U, 6U, 8U, 2U, 3U, 2U, 5U, 2U, 7U, 1U, 6U, 2U, 0U, 1U, 0U, 5U, 2U, 6U, 5U, 2U, 2U, 7U, 2U, 1U, 1U, 1U, 6U, 6U, 0U, 3U, 9U, 6U,
  6U, 6U, 5U, 5U, 7U, 3U, 0U, 9U, 2U, 5U, 4U, 7U, 1U, 1U, 0U, 5U, 5U, 7U, 8U, 5U, 3U, 7U, 6U, 3U, 4U, 6U, 6U, 8U, 2U, 0U, 6U, 5U, 3U, 1U, 0U, 9U, 8U, 9U, 6U, 5U, 2U, 6U, 9U, 1U, 8U, 6U, 2U, 0U, 5U, 6U, 4U, 7U, 6U, 9U, 3U, 1U, 2U, 5U, 7U, 0U, 5U, 8U, 6U, 3U, 5U, 6U, 6U, 2U, 0U, 1U, 8U, 5U, 5U, 8U, 1U, 0U, 0U, 7U, 2U, 9U, 3U, 6U, 0U, 6U, 5U, 9U, 8U, 7U, 6U, 4U, 8U, 6U, 1U, 1U, 7U, 9U, 1U, 0U, 4U, 5U,
  3U, 3U, 4U, 8U, 8U, 5U, 0U, 3U, 4U, 6U, 1U, 1U, 3U, 6U, 5U, 7U, 6U, 8U, 6U, 7U, 5U, 3U, 2U, 4U, 9U, 4U, 4U, 1U, 6U, 6U, 8U, 0U, 3U, 9U, 6U, 2U, 6U, 5U, 7U, 9U, 7U, 8U, 7U, 7U, 1U, 8U, 5U, 5U, 6U, 0U, 8U, 4U, 5U, 5U, 2U, 9U, 6U, 5U, 4U, 1U, 2U, 6U, 6U, 5U, 4U, 0U, 8U, 5U, 3U, 0U, 6U, 1U, 4U, 3U, 4U, 4U, 4U, 3U, 1U, 8U, 5U, 8U, 6U, 7U, 6U, 9U, 7U, 5U, 1U, 4U, 5U, 6U, 6U, 1U, 4U, 0U, 6U, 8U, 0U, 0U,
  7U, 0U, 0U, 2U, 3U, 7U, 8U, 7U, 7U, 6U, 5U, 9U, 1U, 3U, 4U, 4U, 0U, 1U, 7U, 1U, 2U, 7U, 4U, 9U, 4U, 7U, 0U, 4U, 2U, 0U, 5U, 6U, 2U, 2U, 3U, 0U, 5U, 3U, 8U, 9U, 9U, 4U, 5U, 6U, 1U, 3U, 1U, 4U, 0U, 7U, 1U, 1U, 2U, 7U, 0U, 0U, 0U, 4U, 0U, 7U, 8U, 5U, 4U, 7U, 3U, 3U, 2U, 6U, 9U, 9U, 3U, 9U, 0U, 8U, 1U, 4U, 5U, 4U, 6U, 6U, 4U, 6U, 4U, 5U, 8U, 8U, 0U, 7U, 9U, 7U, 2U, 7U, 0U, 8U, 2U, 6U, 6U, 8U, 3U, 0U,
  6U, 3U, 4U, 3U, 2U, 8U, 5U, 8U, 7U, 8U, 5U, 6U, 9U, 8U, 3U, 0U, 5U, 2U, 3U, 5U, 8U, 0U, 8U, 9U, 3U, 3U, 0U, 6U, 5U, 7U, 5U, 7U, 4U, 0U, 6U, 7U, 9U, 5U, 4U, 5U, 7U, 1U, 6U, 3U, 7U, 7U, 5U, 2U, 5U, 4U, 2U, 0U, 2U, 1U, 1U, 4U, 9U, 5U, 5U, 7U, 6U, 1U, 5U, 8U, 1U, 4U, 0U, 0U, 2U, 5U, 0U, 1U, 2U, 6U, 2U, 2U, 8U, 5U, 9U, 4U, 1U, 3U, 0U, 2U, 1U, 6U, 4U, 7U, 1U, 5U, 5U, 0U, 9U, 7U, 9U, 2U, 5U, 9U, 2U, 3U,
  0U, 9U, 9U, 0U, 7U, 9U, 6U, 5U, 4U, 7U, 3U, 7U, 6U, 1U, 2U, 5U, 5U, 1U, 7U, 6U, 5U, 6U, 7U, 5U, 1U, 3U, 5U, 7U, 5U, 1U, 7U, 8U, 2U, 9U, 6U, 6U, 6U, 4U, 5U, 4U, 7U, 7U, 9U, 1U, 7U, 4U, 5U, 0U, 1U, 1U, 2U, 9U, 9U, 6U, 1U, 4U, 8U, 9U, 0U, 3U, 0U, 4U, 6U, 3U, 9U, 9U, 4U, 7U, 1U, 3U, 2U, 9U, 6U, 2U, 1U, 0U, 7U, 3U, 4U, 0U, 4U, 3U, 7U, 5U, 1U, 8U, 9U, 5U, 7U, 3U, 5U, 9U, 6U, 1U, 4U, 5U, 8U, 9U, 0U, 1U,
  9U, 3U, 8U, 9U, 7U, 1U, 3U, 1U, 1U, 1U, 7U, 9U, 0U, 4U, 2U, 9U, 7U, 8U, 2U, 8U, 5U, 6U, 4U, 7U, 5U, 0U, 3U, 2U, 0U, 3U, 1U, 9U, 8U, 6U, 9U, 1U, 5U, 1U, 4U, 0U, 2U, 8U, 7U, 0U, 8U, 0U, 8U, 5U, 9U, 9U, 0U, 4U, 8U, 0U, 1U, 0U, 9U, 4U, 1U, 2U, 1U, 4U, 7U, 2U, 2U, 1U, 3U, 1U, 7U, 9U, 4U, 7U, 6U, 4U, 7U, 7U, 7U, 2U, 6U, 2U, 2U, 4U, 1U, 4U, 2U, 5U, 4U, 8U, 5U, 4U, 5U, 4U, 0U, 3U, 3U, 2U, 1U, 5U, 7U, 1U,
  8U, 5U, 3U, 0U, 6U, 1U, 4U, 2U, 2U, 8U, 8U, 1U, 3U, 7U, 5U, 8U, 5U, 0U, 4U, 3U, 0U, 6U, 3U, 3U, 2U, 1U, 7U, 5U, 1U, 8U, 2U, 9U, 7U, 9U, 8U, 6U, 6U, 2U, 2U, 3U, 7U, 1U, 7U, 2U, 1U, 5U, 9U, 1U, 6U, 0U, 7U, 7U, 1U, 6U, 6U, 9U, 2U, 5U, 4U, 7U, 4U, 8U, 7U, 3U, 8U, 9U, 8U, 6U, 6U, 5U, 4U, 9U, 4U, 9U, 4U, 5U, 0U, 1U, 1U, 4U, 6U, 5U, 4U, 0U, 6U, 2U, 8U, 4U, 3U, 3U, 6U, 6U, 3U, 9U, 3U, 7U, 9U, 0U, 0U, 3U,
  9U, 7U, 6U, 9U, 2U, 6U, 5U, 6U, 7U, 2U, 1U, 4U, 6U, 3U, 8U, 5U, 3U, 0U, 6U, 7U, 3U, 6U, 0U, 9U, 6U, 5U, 7U, 1U, 2U, 0U, 9U, 1U, 8U, 0U, 7U, 6U, 3U, 8U, 3U, 2U, 7U, 1U, 6U, 6U, 4U, 1U, 6U, 2U, 7U, 4U, 8U, 8U, 8U, 8U, 0U, 0U, 7U, 8U, 6U, 9U, 2U, 5U, 6U, 0U, 2U, 9U, 0U, 2U, 2U, 8U, 4U, 7U, 2U, 1U, 0U, 4U, 0U, 3U, 1U, 7U, 2U, 1U, 1U, 8U, 6U, 0U, 8U, 2U, 0U, 4U, 1U, 9U, 0U, 0U, 0U, 4U, 2U, 2U, 9U, 6U,
  6U, 1U, 7U, 1U, 1U, 9U, 6U, 3U, 7U, 7U, 9U, 2U, 1U, 3U, 3U, 7U, 5U, 7U, 5U, 1U, 1U, 4U, 9U, 5U, 9U, 5U, 0U, 1U, 5U, 6U, 6U, 0U, 4U, 9U, 6U, 3U, 1U, 8U, 6U, 2U, 9U, 4U, 7U, 2U, 6U, 5U, 4U, 7U, 3U, 6U, 4U, 2U, 5U, 2U, 3U, 0U, 8U, 1U, 7U, 7U, 0U, 3U, 6U, 7U, 5U, 1U, 5U, 9U, 0U, 6U, 7U, 3U, 5U, 0U, 2U, 3U, 5U, 0U, 7U, 2U, 8U, 3U, 5U, 4U, 0U, 5U, 6U, 7U, 0U, 4U, 0U, 3U, 8U, 6U, 7U, 4U, 3U, 5U, 1U, 3U,
  6U, 2U, 2U, 2U, 2U, 4U, 7U, 7U, 1U, 5U, 8U, 9U, 1U, 5U, 0U, 4U, 9U, 5U, 3U, 0U, 9U, 8U, 4U, 4U, 4U, 8U, 9U, 3U, 3U, 3U, 0U, 9U, 6U, 3U, 4U, 0U, 8U, 7U, 8U, 0U, 7U, 6U, 9U, 3U, 2U, 5U, 9U, 9U, 3U, 9U, 7U, 8U, 0U, 5U, 4U, 1U, 9U, 3U, 4U, 1U, 4U, 4U, 7U, 3U, 7U, 7U, 4U, 4U, 1U, 8U, 4U, 2U, 6U, 3U, 1U, 2U, 9U, 8U, 6U, 0U, 8U, 0U, 9U, 9U, 8U, 8U, 8U, 6U, 8U, 7U, 4U, 1U, 3U, 2U, 6U, 0U, 4U, 7U, 2U, 1U,
  5U, 6U, 9U, 5U, 1U, 6U, 2U, 3U, 9U, 6U, 5U, 8U, 6U, 4U, 5U, 7U, 3U, 0U, 2U, 1U, 6U, 3U, 1U, 5U, 9U, 8U, 1U, 9U, 3U, 1U, 9U, 5U, 1U, 6U, 7U, 3U, 5U, 3U, 8U, 1U, 2U, 9U, 7U, 4U, 1U, 6U, 7U, 7U, 2U, 9U, 4U, 7U, 8U, 6U, 7U, 2U, 4U, 2U, 2U, 9U, 2U, 4U, 6U, 5U, 4U, 3U, 6U, 6U, 8U, 0U, 0U, 9U, 8U, 0U, 6U, 7U, 6U, 9U, 2U, 8U, 2U, 3U, 8U, 2U, 8U, 0U, 6U, 8U, 9U, 9U, 6U, 4U, 0U, 0U, 4U, 8U, 2U, 4U, 3U, 5U,
  4U, 0U, 3U, 7U, 0U, 1U, 4U, 1U, 6U, 3U, 1U, 4U, 9U, 6U, 5U, 8U, 9U, 7U, 9U, 4U, 0U, 9U, 2U, 4U, 3U, 2U, 3U, 7U, 8U, 9U, 6U, 9U, 0U, 7U, 0U, 6U, 9U, 7U, 7U, 9U, 4U, 2U, 2U, 3U, 6U, 2U, 5U, 0U, 8U, 2U, 2U, 1U, 6U, 8U, 8U, 9U, 5U, 7U, 3U, 8U, 3U, 7U, 9U, 8U, 6U, 2U, 3U, 0U, 0U, 1U, 5U, 9U, 3U, 7U, 7U, 6U, 4U, 7U, 1U, 6U, 5U, 1U, 2U, 2U, 8U, 9U, 3U, 5U, 7U, 8U, 6U, 0U, 1U, 5U, 8U, 8U, 1U, 6U, 1U, 7U,
  5U, 5U, 7U, 8U, 2U, 9U, 7U, 3U, 5U, 2U, 3U, 3U, 4U, 4U, 6U, 0U, 4U, 2U, 8U, 1U, 5U, 1U, 2U, 6U, 2U, 7U, 2U, 0U, 3U, 7U, 3U, 4U, 3U, 1U, 4U, 6U, 5U, 3U, 1U, 9U, 7U, 7U, 7U, 7U, 4U, 1U, 6U, 0U, 3U, 1U, 9U, 9U, 0U, 6U, 6U, 5U, 5U, 4U, 1U, 8U, 7U, 6U, 3U, 9U, 7U, 9U, 2U, 9U, 3U, 3U, 4U, 4U, 1U, 9U, 5U, 2U, 1U, 5U, 4U, 1U, 3U, 4U, 1U, 8U, 9U, 9U, 4U, 8U, 5U, 4U, 4U, 4U, 7U, 3U, 4U, 5U, 6U, 7U, 3U, 8U,
  3U, 1U, 6U, 2U, 4U, 9U, 9U, 3U, 4U, 1U, 9U, 1U, 3U, 1U, 8U, 1U, 4U, 8U, 0U, 9U, 2U, 7U, 7U, 7U, 7U, 1U, 0U, 3U, 8U, 6U, 3U, 8U, 7U, 7U, 3U, 4U, 3U, 1U, 7U, 7U, 2U, 0U, 7U, 5U, 4U, 5U, 6U, 5U, 4U, 5U, 3U, 2U, 2U, 0U, 7U, 7U, 7U, 0U, 9U, 2U, 1U, 2U, 0U, 1U, 9U, 0U, 5U, 1U, 6U, 6U, 0U, 9U, 6U, 2U, 8U, 0U, 4U, 9U, 0U, 9U, 2U, 6U, 3U, 6U, 0U, 1U, 9U, 7U, 5U, 9U, 8U, 8U, 2U, 8U, 1U, 6U, 1U, 3U, 3U, 2U,
  3U, 1U, 6U, 6U, 6U, 3U, 6U, 5U, 2U, 8U, 6U, 1U, 9U, 3U, 2U, 6U, 6U, 8U, 6U, 3U, 3U, 6U, 0U, 6U, 2U, 7U, 3U, 5U, 6U, 7U, 6U, 3U, 0U, 3U, 5U, 4U, 4U, 7U, 7U, 6U, 2U, 8U, 0U, 3U, 5U, 0U, 4U, 5U, 0U, 7U, 7U, 7U, 2U, 3U, 5U, 5U, 4U, 7U, 1U, 0U, 5U, 8U, 5U, 9U, 5U, 4U, 8U, 7U, 0U, 2U, 7U, 9U, 0U, 8U, 1U, 4U, 3U, 5U, 6U, 2U, 4U, 0U, 1U, 4U, 5U, 1U, 7U, 1U, 8U, 0U, 6U, 2U, 4U, 6U, 4U, 3U, 6U, 2U, 6U, 7U,
  9U, 4U, 5U, 6U, 1U, 2U, 7U, 5U, 3U, 1U, 8U, 1U, 3U, 4U, 0U, 7U, 8U, 3U, 3U, 0U, 3U, 3U, 6U, 2U, 5U, 4U, 2U, 3U, 2U, 7U, 8U, 3U, 9U, 4U, 4U, 9U, 7U, 5U, 3U, 8U, 2U, 4U, 3U, 7U, 2U, 0U, 5U, 8U, 3U, 5U, 3U, 1U, 1U, 4U, 7U, 7U, 1U, 1U, 9U, 9U, 2U, 6U, 0U, 6U, 3U, 8U, 1U, 3U, 3U, 4U, 6U, 7U, 7U, 6U, 8U, 7U, 9U, 6U, 9U, 5U, 9U, 7U, 0U, 3U, 0U, 9U, 8U, 3U, 3U, 9U, 1U, 3U, 0U, 7U, 7U, 1U, 0U, 9U, 8U, 7U,
  0U, 4U, 0U, 8U, 5U, 9U, 1U, 3U, 3U, 7U, 4U, 6U, 4U, 1U, 4U, 4U, 2U, 8U, 2U, 2U, 7U, 7U, 2U, 6U, 3U, 4U, 6U, 5U, 9U, 4U, 7U, 0U, 4U, 7U, 4U, 5U, 8U, 7U, 8U, 4U, 7U, 7U, 8U, 7U, 2U, 0U, 1U, 9U, 2U, 7U, 7U, 1U, 5U, 2U, 8U, 0U, 7U, 3U, 1U, 7U, 6U, 7U, 9U, 0U, 7U, 7U, 0U, 7U, 1U, 5U, 7U, 2U, 1U, 3U, 4U, 4U, 4U, 7U, 3U, 0U, 6U, 0U, 5U, 7U, 0U, 0U, 7U, 3U, 3U, 4U, 9U, 2U, 4U, 3U, 6U, 9U, 3U, 1U, 1U, 3U,
  8U, 3U, 5U, 0U, 4U, 9U, 3U, 1U, 6U, 3U, 1U, 2U, 8U, 4U, 0U, 4U, 2U, 5U, 1U, 2U, 1U, 9U, 2U, 5U, 6U, 5U, 1U, 7U, 9U, 8U, 0U, 6U, 9U, 4U, 1U, 1U, 3U, 5U, 2U, 8U, 0U, 1U, 3U, 1U, 4U, 7U, 0U, 1U, 3U, 0U, 4U, 7U, 8U, 1U, 6U, 4U, 3U, 7U, 8U, 8U, 5U, 1U, 8U, 5U, 2U, 9U, 0U, 9U, 2U, 8U, 5U, 4U, 5U, 2U, 0U, 1U, 1U, 6U, 5U, 8U, 3U, 9U, 3U, 4U, 1U, 9U, 6U, 5U, 6U, 2U, 1U, 3U, 4U, 9U, 1U, 4U, 3U, 4U, 1U, 5U,
  9U, 5U, 6U, 2U, 5U, 8U, 6U, 5U, 8U, 6U, 5U, 5U, 7U, 0U, 5U, 5U, 2U, 6U, 9U, 0U, 4U, 9U, 6U, 5U, 2U, 0U, 9U, 8U, 5U, 8U, 0U, 3U, 3U, 8U, 5U, 0U, 7U, 2U, 2U, 4U, 2U, 6U, 4U, 8U, 2U, 9U, 3U, 9U, 7U, 2U, 8U, 5U, 8U, 4U, 7U, 8U, 3U, 1U, 6U, 3U, 0U, 5U, 7U, 7U, 7U, 7U, 5U, 6U, 0U, 6U, 8U, 8U, 8U, 7U, 6U, 4U, 4U, 6U, 2U, 4U, 8U, 2U, 4U, 6U, 8U, 5U, 7U, 9U, 2U, 6U, 0U, 3U, 9U, 5U, 3U, 5U, 2U, 7U, 7U, 3U,
  4U, 8U, 0U, 3U, 0U, 4U, 8U, 0U, 2U, 9U, 0U, 0U, 5U, 8U, 7U, 6U, 0U, 7U, 5U, 8U, 2U, 5U, 1U, 0U, 4U, 7U, 4U, 7U, 0U, 9U, 1U, 6U, 4U, 3U, 9U, 6U, 1U, 3U, 6U, 2U, 6U, 7U, 6U, 0U, 4U, 4U, 9U, 2U, 5U, 6U, 2U, 7U, 4U, 2U, 0U, 4U, 2U, 0U, 8U, 3U, 2U, 0U, 8U, 5U, 6U, 6U, 1U, 1U, 9U, 0U, 6U, 2U, 5U, 4U, 5U, 4U, 3U, 3U, 7U, 2U, 1U, 3U, 1U, 5U, 3U, 5U, 9U, 5U, 8U, 4U, 5U, 0U, 6U, 8U, 7U, 7U, 2U, 4U, 6U, 0U,
  2U, 9U, 0U, 1U, 6U, 1U, 8U, 7U, 6U, 6U, 7U, 9U, 5U, 2U, 4U, 0U, 6U, 1U, 6U, 3U, 4U, 2U, 5U, 2U, 2U, 5U, 7U, 7U, 1U, 9U, 5U, 4U, 2U, 9U, 1U, 6U, 2U, 9U, 9U, 1U, 9U, 3U, 0U, 6U, 4U, 5U, 5U, 3U, 7U, 7U, 9U, 9U, 1U, 4U, 0U, 3U, 7U, 3U, 4U, 0U, 4U, 3U, 2U, 8U, 7U, 5U, 2U, 6U, 2U, 8U, 8U, 8U, 9U, 6U, 3U, 9U, 9U, 5U, 8U, 7U, 9U, 4U, 7U, 5U, 7U, 2U, 9U, 1U, 7U, 4U, 6U, 4U, 2U, 6U, 3U, 5U, 7U, 4U, 5U, 5U,
  2U, 5U, 4U, 0U, 7U, 9U, 0U, 9U, 1U, 4U, 5U, 1U, 3U, 5U, 7U, 1U, 1U, 1U, 3U, 6U, 9U, 4U, 1U, 0U, 9U, 1U, 1U, 9U, 3U, 9U, 3U, 2U, 5U, 1U, 9U, 1U, 0U, 7U, 6U, 0U, 2U, 0U, 8U, 2U, 5U, 2U, 0U, 2U, 6U, 1U, 8U, 7U, 9U, 8U, 5U, 3U, 1U, 8U, 8U, 7U, 7U, 0U, 5U, 8U, 4U, 2U, 9U, 7U, 2U, 5U, 9U, 1U, 6U, 7U, 7U, 8U, 1U, 3U, 1U, 4U, 9U, 6U, 9U, 9U, 0U, 0U, 9U, 0U, 1U, 9U, 2U, 1U, 1U, 6U, 9U, 7U, 1U, 7U, 3U, 7U,
  2U, 7U, 8U, 4U, 7U, 6U, 8U, 4U, 7U, 2U, 6U, 8U, 6U, 0U, 8U, 4U, 9U, 0U, 0U, 3U, 3U, 7U, 7U, 0U, 2U, 4U, 2U, 4U, 2U, 9U, 1U, 6U, 5U, 1U, 3U, 0U, 0U, 5U, 0U, 0U, 5U, 1U, 6U, 8U, 3U, 2U, 3U, 3U, 6U, 4U, 3U, 5U, 0U, 3U, 8U, 9U, 5U, 1U, 7U, 0U, 2U, 9U, 8U, 9U, 3U, 9U, 2U, 2U, 3U, 3U, 4U, 5U, 1U, 7U, 2U, 2U, 0U, 1U, 3U, 8U, 1U, 2U, 8U, 0U, 6U, 9U, 6U, 5U, 0U, 1U, 1U, 7U, 8U, 4U, 4U, 0U, 8U, 7U, 4U, 5U,
  1U, 9U, 6U, 0U, 1U, 2U, 1U, 2U, 2U, 8U, 5U, 9U, 9U, 3U, 7U, 1U, 6U, 2U, 3U, 1U, 3U, 0U, 1U, 7U, 1U, 1U, 4U, 4U, 4U, 8U, 4U, 6U, 4U, 0U, 9U, 0U, 3U, 8U, 9U, 0U, 6U, 4U, 4U, 9U, 5U, 4U, 4U, 4U, 0U, 0U, 6U, 1U, 9U, 8U, 6U, 9U, 0U, 7U, 5U, 4U, 8U, 5U, 1U, 6U, 0U, 2U, 6U, 3U, 2U, 7U, 5U, 0U, 5U, 2U, 9U, 8U, 3U, 4U, 9U, 1U, 8U, 7U, 4U, 0U, 7U, 8U, 6U, 6U, 8U, 0U, 8U, 8U, 1U, 8U, 3U, 3U, 8U, 5U, 1U, 0U,
  2U, 2U, 8U, 3U, 3U, 4U, 5U, 0U, 8U, 5U, 0U, 4U, 8U, 6U, 0U, 8U, 2U, 5U, 0U, 3U, 9U, 3U, 0U, 2U, 1U, 3U, 3U, 2U, 1U, 9U, 7U, 1U, 5U, 5U, 1U, 8U, 4U, 3U, 0U, 6U, 3U, 5U, 4U, 5U, 5U, 0U, 0U, 7U, 6U, 6U, 8U, 2U, 8U, 2U, 9U, 4U, 9U, 3U, 0U, 4U, 1U, 3U, 7U, 7U, 6U, 5U, 5U, 2U, 7U, 9U, 3U, 9U, 7U, 5U, 1U, 7U, 5U, 4U, 6U, 1U, 3U, 9U, 5U, 3U, 9U, 8U, 4U, 6U, 8U, 3U, 3U, 9U, 3U, 6U, 3U, 8U, 3U, 0U, 4U, 7U,
  4U, 6U, 1U, 1U, 9U, 9U, 6U, 6U, 5U, 3U, 8U, 5U, 8U, 1U, 5U, 3U, 8U, 4U, 2U, 0U, 5U, 6U, 8U, 5U, 3U, 3U, 8U, 6U, 2U, 1U, 8U, 6U, 7U, 2U, 5U, 2U, 3U, 3U, 4U, 0U, 2U, 8U, 3U, 0U, 8U, 7U, 1U, 1U, 2U, 3U, 2U, 8U, 2U, 7U, 8U, 9U, 2U, 1U, 2U, 5U, 0U, 7U, 7U, 1U, 2U, 6U, 2U, 9U, 4U, 6U, 3U, 2U, 2U, 9U, 5U, 6U, 3U, 9U, 8U, 9U, 8U, 9U, 8U, 9U, 3U, 5U, 8U, 2U, 1U, 1U, 6U, 7U, 4U, 5U, 6U, 2U, 7U, 0U, 1U, 0U,
  2U, 1U, 8U, 3U, 5U, 6U, 4U, 6U, 2U, 2U, 0U, 1U, 3U, 4U, 9U, 6U, 7U, 1U, 5U, 1U, 8U, 8U, 1U, 9U, 0U, 9U, 7U, 3U, 0U, 3U, 8U, 1U, 1U, 9U, 8U, 0U, 0U, 4U, 9U, 7U, 3U, 4U, 0U, 7U, 2U, 3U, 9U, 6U, 1U, 0U, 3U, 6U, 8U, 5U, 4U, 0U, 6U, 6U, 4U, 3U, 1U, 9U, 3U, 9U, 5U, 0U, 9U, 7U, 9U, 0U, 1U, 9U, 0U, 6U, 9U, 9U, 6U, 3U, 9U, 5U, 5U, 2U, 4U, 5U, 3U, 0U, 0U, 5U, 4U, 5U, 0U, 5U, 8U, 0U, 6U, 8U, 5U, 5U, 0U, 1U,
  9U, 5U, 6U, 7U, 3U, 0U, 2U, 2U, 9U, 2U, 1U, 9U, 1U, 3U, 9U, 3U, 3U, 9U, 1U, 8U, 5U, 6U, 8U, 0U, 3U, 4U, 4U, 9U, 0U, 3U, 9U, 8U, 2U, 0U, 5U, 9U, 5U, 5U, 1U, 0U, 0U, 2U, 2U, 6U, 3U, 5U, 3U, 5U, 3U, 6U, 1U, 9U, 2U, 0U, 4U, 1U, 9U, 9U, 4U, 7U, 4U, 5U, 5U, 3U, 8U, 5U, 9U, 3U, 8U, 1U, 0U, 2U, 3U, 4U, 3U, 9U, 5U, 5U, 4U, 4U, 9U, 5U, 9U, 7U, 7U, 8U, 3U, 7U, 7U, 9U, 0U, 2U, 3U, 7U, 4U, 2U, 1U, 6U, 1U, 7U,
  2U, 7U, 1U, 1U, 1U, 7U, 2U, 3U, 6U, 4U, 3U, 4U, 3U, 5U, 4U, 3U, 9U, 4U, 7U, 8U, 2U, 2U, 1U, 8U, 1U, 8U, 5U, 2U, 8U, 6U, 2U, 4U, 0U, 8U, 5U, 1U, 4U, 0U, 0U, 6U, 6U, 6U, 0U, 4U, 4U, 3U, 3U, 2U, 5U, 8U, 8U, 8U, 5U, 6U, 9U, 8U, 6U, 7U, 0U, 5U, 4U, 3U, 1U, 5U, 4U, 7U, 0U, 6U, 9U, 6U, 5U, 7U, 4U, 7U, 4U, 5U, 8U, 5U, 5U, 0U, 3U, 3U, 2U, 3U, 2U, 3U, 3U, 4U, 2U, 1U, 0U, 7U, 3U, 0U, 1U, 5U, 4U, 5U, 9U, 4U,
  0U, 5U, 1U, 6U, 5U, 5U, 3U, 7U, 9U, 0U, 6U, 8U, 6U, 6U, 2U, 7U, 3U, 3U, 3U, 7U, 9U, 9U, 5U, 8U, 5U, 1U, 1U, 5U, 6U, 2U, 5U, 7U, 8U, 4U, 3U, 2U, 2U, 9U, 8U, 8U, 2U, 7U, 3U, 7U, 2U, 3U, 1U, 9U, 8U, 9U, 8U, 7U, 5U, 7U, 1U, 4U, 1U, 5U, 9U, 5U, 7U, 8U, 1U, 1U, 1U, 9U, 6U, 3U, 5U, 8U, 3U, 3U, 0U, 0U, 5U, 9U, 4U, 0U, 8U, 7U, 3U, 0U, 6U, 8U, 1U, 2U, 1U, 6U, 0U, 2U, 8U, 7U, 6U, 4U, 9U, 6U, 2U, 8U, 6U, 7U,
  4U, 4U, 6U, 0U, 4U, 7U, 7U, 4U, 6U, 4U, 9U, 1U, 5U, 9U, 9U, 5U, 0U, 5U, 4U, 9U, 7U, 3U, 7U, 4U, 2U, 5U, 6U, 2U, 6U, 9U, 0U, 1U, 0U, 4U, 9U, 0U, 3U, 7U, 7U, 8U, 1U, 9U, 8U, 6U, 8U, 3U, 5U, 9U, 3U, 8U, 1U, 4U, 6U, 5U, 7U, 4U, 1U, 2U, 6U, 8U, 0U, 4U, 9U, 2U, 5U, 6U, 4U, 8U, 7U, 9U, 8U, 5U, 5U, 6U, 1U, 4U, 5U, 3U, 7U, 2U, 3U, 4U, 7U, 8U, 6U, 7U, 3U, 3U, 0U, 3U, 9U, 0U, 4U, 6U, 8U, 8U, 3U, 8U, 3U, 4U,
  3U, 6U, 3U, 4U, 6U, 5U, 5U, 3U, 7U, 9U, 4U, 9U, 8U, 6U, 4U, 1U, 9U, 2U, 7U, 0U, 5U, 6U, 3U, 8U, 7U, 2U, 9U, 3U, 1U, 7U, 4U, 8U, 7U, 2U, 3U, 3U, 2U, 0U, 8U, 3U, 7U, 6U, 0U, 1U, 1U, 2U, 3U, 0U, 2U, 9U, 9U, 1U, 1U, 3U, 6U, 7U, 9U, 3U, 8U, 6U, 2U, 7U, 0U, 8U, 9U, 4U, 3U, 8U, 7U, 9U, 9U, 3U, 6U, 2U, 0U, 1U, 6U, 2U, 9U, 5U, 1U, 5U, 4U, 1U, 3U, 3U, 7U, 1U, 4U, 2U, 4U, 8U, 9U, 2U, 8U, 3U, 0U, 7U, 2U, 2U,
  0U, 1U, 2U, 6U, 9U, 0U, 1U, 4U, 7U, 5U, 4U, 6U, 6U, 8U, 4U, 7U, 6U, 5U, 3U, 5U, 7U, 6U, 1U, 6U, 4U, 7U, 7U, 3U, 7U, 9U, 4U, 6U, 7U, 5U, 2U, 0U, 0U, 4U, 9U, 0U, 7U, 5U, 7U, 1U, 5U, 5U, 5U, 2U, 7U, 8U, 1U, 9U, 6U, 5U, 3U, 6U, 2U, 1U, 3U, 2U, 3U, 9U, 2U, 6U, 4U, 0U, 6U, 1U, 6U, 0U, 1U, 3U, 6U, 3U, 5U, 8U, 1U, 5U, 5U, 9U, 0U, 7U, 4U, 2U, 2U, 0U, 2U, 0U, 2U, 0U, 3U, 1U, 8U, 7U, 2U, 7U, 7U, 6U, 0U, 5U,
  2U, 7U, 7U, 2U, 1U, 9U, 0U, 0U, 5U, 5U, 6U, 1U, 4U, 8U, 4U, 2U, 5U, 5U, 5U, 1U, 8U, 7U, 9U, 2U, 5U, 3U, 0U, 3U, 4U, 3U, 5U, 1U, 3U, 9U, 8U, 4U, 4U, 2U, 5U, 3U, 2U, 2U, 3U, 4U, 1U, 5U, 7U, 6U, 2U, 3U, 3U, 6U, 1U, 0U, 6U, 4U, 2U, 5U, 0U, 6U, 3U, 9U, 0U, 4U, 9U, 7U, 5U, 0U, 0U, 8U, 6U, 5U, 6U, 2U, 7U, 1U, 0U, 9U, 5U, 3U, 5U, 9U, 1U, 9U, 4U, 6U, 5U, 8U, 9U, 7U, 5U, 1U, 4U, 1U, 3U, 1U, 0U, 3U, 4U, 8U,
  2U, 2U, 7U, 6U, 9U, 3U, 0U, 6U, 2U, 4U, 7U, 4U, 3U, 5U, 3U, 6U, 3U, 2U, 5U, 6U, 9U, 1U, 6U, 0U, 7U, 8U, 1U, 5U, 4U, 7U, 8U, 1U, 8U, 1U, 1U, 5U, 2U, 8U, 4U, 3U, 6U, 6U, 7U, 9U, 5U, 7U, 0U, 6U, 1U, 1U, 0U, 8U, 6U, 1U, 5U, 3U, 3U, 1U, 5U, 0U, 4U, 4U, 5U, 2U, 1U, 2U, 7U, 4U, 7U, 3U, 9U, 2U, 4U, 5U, 4U, 4U, 9U, 4U, 5U, 4U, 2U, 3U, 6U, 8U, 2U, 8U, 8U, 6U, 0U, 6U, 1U, 3U, 4U, 0U, 8U, 4U, 1U, 4U, 8U, 6U,
  3U, 7U, 7U, 6U, 7U, 0U, 0U, 9U, 6U, 1U, 2U, 0U, 7U, 1U, 5U, 1U, 2U, 4U, 9U, 1U, 4U, 0U, 4U, 3U, 0U, 2U, 7U, 2U, 5U, 3U, 8U, 6U, 0U, 7U, 6U, 4U, 8U, 2U, 3U, 6U, 3U, 4U, 1U, 4U, 3U, 3U, 4U, 6U, 2U, 3U, 5U, 1U, 8U, 9U, 7U, 5U, 7U, 6U, 6U, 4U, 5U, 2U, 1U, 6U, 4U, 1U, 3U, 7U, 6U, 7U, 9U, 6U, 9U, 0U, 3U, 1U, 4U, 9U, 5U, 0U, 1U, 9U, 1U, 0U, 8U, 5U, 7U, 5U, 9U, 8U, 4U, 4U, 2U, 3U, 9U, 1U, 9U, 8U, 6U, 2U,
  9U, 1U, 6U, 4U, 2U, 1U, 9U, 3U, 9U, 9U, 4U, 9U, 0U, 7U, 2U, 3U, 6U, 2U, 3U, 4U, 6U, 4U, 6U, 8U, 4U, 4U, 1U, 1U, 7U, 3U, 9U, 4U, 0U, 3U, 2U, 6U, 5U, 9U, 1U, 8U, 4U, 0U, 4U, 4U, 3U, 7U, 8U, 0U, 5U, 1U, 3U, 3U, 3U, 8U, 9U, 4U, 5U, 2U, 5U, 7U, 4U, 2U, 3U, 9U, 9U, 5U, 0U, 8U, 2U, 9U, 6U, 5U, 9U, 1U, 2U, 2U, 8U, 5U, 0U, 8U, 5U, 5U, 5U, 8U, 2U, 1U, 5U, 7U, 2U, 5U, 0U, 3U, 1U, 0U, 7U, 1U, 2U, 5U, 7U, 0U,
  1U, 2U, 6U, 6U, 8U, 3U, 0U, 2U, 4U, 0U, 2U, 9U, 2U, 9U, 5U, 2U, 5U, 2U, 2U, 0U, 1U, 1U, 8U, 7U, 2U, 6U, 7U, 6U, 7U, 5U, 6U, 2U, 2U, 0U, 4U, 1U, 5U, 4U, 2U, 0U, 5U, 1U, 6U, 1U, 8U, 4U, 1U, 6U, 3U, 4U, 8U, 4U, 7U, 5U, 6U, 5U, 1U, 6U, 9U, 9U, 9U, 8U, 1U, 1U, 6U, 1U, 4U, 1U, 0U, 1U, 0U, 0U, 2U, 9U, 9U, 6U, 0U, 7U, 8U, 3U, 8U, 6U, 9U, 0U, 9U, 2U, 9U, 1U, 6U, 0U, 3U, 0U, 2U, 8U, 8U, 4U, 0U, 0U, 2U, 6U,
  9U, 1U, 0U, 4U, 1U, 4U, 0U, 7U, 9U, 2U, 8U, 8U, 6U, 2U, 1U, 5U, 0U, 7U, 8U, 4U, 2U, 4U, 5U, 1U, 6U, 7U, 0U, 9U, 0U, 8U, 7U, 0U, 0U, 0U, 6U, 9U, 9U, 2U, 8U, 2U, 1U, 2U, 0U, 6U, 6U, 0U, 4U, 1U, 8U, 3U, 7U, 1U, 8U, 0U, 6U, 5U, 3U, 5U, 5U, 6U, 7U, 2U, 5U, 2U, 5U, 3U, 2U, 5U, 6U, 7U, 5U, 3U, 2U, 8U, 6U, 1U, 2U, 9U, 1U, 0U, 4U, 2U, 4U, 8U, 7U, 7U, 6U, 1U, 8U, 2U, 5U, 8U, 2U, 9U, 7U, 6U, 5U, 1U, 5U, 7U,
  9U, 5U, 9U, 8U, 4U, 7U, 0U, 3U, 5U, 6U, 2U, 2U, 2U, 6U, 2U, 9U, 3U, 4U, 8U, 6U, 0U, 0U, 3U, 4U, 1U, 5U, 8U, 7U, 2U, 2U, 9U, 8U, 0U, 5U, 3U, 4U, 9U, 8U, 9U, 6U, 5U, 0U, 2U, 2U, 6U, 2U, 9U, 1U, 7U, 4U, 8U, 7U, 8U, 8U, 2U, 0U, 2U, 7U, 3U, 4U, 2U, 0U, 9U, 2U, 2U, 2U, 2U, 4U, 5U, 3U, 3U, 9U, 8U, 5U, 6U, 2U, 6U, 4U, 7U, 6U, 6U, 9U, 1U, 4U, 9U, 0U, 5U, 5U, 6U, 2U, 8U, 4U, 2U, 5U, 0U, 3U, 9U, 1U, 2U, 7U,
  5U, 7U, 7U, 1U, 0U, 2U, 8U, 4U, 0U, 2U, 7U, 9U, 9U, 8U, 0U, 6U, 6U, 3U, 6U, 5U, 8U, 2U, 5U, 4U, 8U, 8U, 9U, 2U, 6U, 4U, 8U, 8U, 0U, 2U, 5U, 4U, 5U, 6U, 6U, 1U, 0U, 1U, 7U, 2U, 9U, 6U, 7U, 0U, 2U, 6U, 6U, 4U, 0U, 7U, 6U, 5U, 5U, 9U, 0U, 4U, 2U, 9U, 0U, 9U, 9U, 4U, 5U, 6U, 8U, 1U, 5U, 0U, 6U, 5U, 2U, 6U, 5U, 3U, 0U, 5U, 3U, 7U, 1U, 8U, 2U, 9U, 4U, 1U, 2U, 7U, 0U, 3U, 3U, 6U, 9U, 3U, 1U, 3U, 7U, 8U,
  5U, 1U, 7U, 8U, 6U, 0U, 9U, 0U, 4U, 0U, 7U, 0U, 8U, 6U, 6U, 7U, 1U, 1U, 4U, 9U, 6U, 5U, 5U, 8U, 3U, 4U, 3U, 4U, 3U, 4U, 7U, 6U, 9U, 3U, 3U, 8U, 5U, 7U, 8U, 1U, 7U, 1U, 1U, 3U, 8U, 6U, 4U, 5U, 5U, 8U, 7U, 3U, 6U, 7U, 8U, 1U, 2U, 3U, 0U, 1U, 4U, 5U, 8U, 7U, 6U, 8U, 7U, 1U, 2U, 6U, 6U, 0U, 3U, 4U, 8U, 9U, 1U, 3U, 9U, 0U, 9U, 5U, 6U, 2U, 0U, 0U, 9U, 9U, 3U, 9U, 3U, 6U, 1U, 0U, 3U, 1U, 0U, 2U, 9U, 1U,
  6U, 1U, 6U, 1U, 5U, 2U, 8U, 8U, 1U, 3U, 8U, 4U, 3U, 7U, 9U, 0U, 9U, 9U, 0U, 4U, 2U, 3U, 1U, 7U, 4U, 7U, 3U, 3U, 6U, 3U, 9U, 4U, 8U, 0U, 4U, 5U, 7U, 5U, 9U, 3U, 1U, 4U, 9U, 3U, 1U, 4U, 0U, 5U, 2U, 9U, 7U, 6U, 3U, 4U, 7U, 5U, 7U, 4U, 8U, 1U, 1U, 9U, 3U, 5U, 6U, 7U, 0U, 9U, 1U, 1U, 0U, 1U, 3U, 7U, 7U, 5U, 1U, 7U, 2U, 1U, 0U, 0U, 8U, 0U, 3U, 1U, 5U, 5U, 9U, 0U, 2U, 4U, 8U, 5U, 3U, 0U, 9U, 0U, 6U, 6U,
  9U, 2U, 0U, 3U, 7U, 6U, 7U, 1U, 9U, 2U, 2U, 0U, 3U, 3U, 2U, 2U, 9U, 0U, 9U, 4U, 3U, 3U, 4U, 6U, 7U, 6U, 8U, 5U, 1U, 4U, 2U, 2U, 1U, 4U, 4U, 7U, 7U, 3U, 7U, 9U, 3U, 9U, 3U, 7U, 5U, 1U, 7U, 0U, 3U, 4U, 4U, 3U, 6U, 6U, 1U, 9U, 9U, 1U, 0U, 4U, 0U, 3U, 3U, 7U, 5U, 1U, 1U, 1U, 7U, 3U, 5U, 4U, 7U, 1U, 9U, 1U, 8U, 5U, 5U, 0U, 4U, 6U, 4U, 4U, 9U, 0U, 2U, 6U, 3U, 6U, 5U, 5U, 1U, 2U, 8U, 1U, 6U, 2U, 2U, 8U,
  8U, 2U, 4U, 4U, 6U, 2U, 5U, 7U, 5U, 9U, 1U, 6U, 3U, 3U, 3U, 0U, 3U, 9U, 1U, 0U, 7U, 2U, 2U, 5U, 3U, 8U, 3U, 7U, 4U, 2U, 1U, 8U, 2U, 1U, 4U, 0U, 8U, 8U, 3U, 5U, 0U, 8U, 6U, 5U, 7U, 3U, 9U, 1U, 7U, 7U, 1U, 5U, 0U, 9U, 6U, 8U, 2U, 8U, 8U, 7U, 4U, 7U, 8U, 2U, 6U, 5U, 6U, 9U, 9U, 5U, 9U, 9U, 5U, 7U, 4U, 4U, 9U, 0U, 6U, 6U, 1U, 7U, 5U, 8U, 3U, 4U, 4U, 1U, 3U, 7U, 5U, 2U, 2U, 3U, 9U, 7U, 0U, 9U, 6U, 8U,
  3U, 4U, 0U, 8U, 0U, 0U, 5U, 3U, 5U, 5U, 9U, 8U, 4U, 9U, 1U, 7U, 5U, 4U, 1U, 7U, 3U, 8U, 1U, 8U, 8U, 3U, 9U, 9U, 9U, 4U, 4U, 6U, 9U, 7U, 4U, 8U, 6U, 7U, 6U, 2U, 6U, 5U, 5U, 1U, 6U, 5U, 8U, 2U, 7U, 6U, 5U, 8U, 4U, 8U, 3U, 5U, 8U, 8U, 4U, 5U, 3U, 1U, 4U, 2U, 7U, 7U, 5U, 6U, 8U, 7U, 9U, 0U, 0U, 2U, 9U, 0U, 9U, 5U, 1U, 7U, 0U, 2U, 8U, 3U, 5U, 2U, 9U, 7U, 1U, 6U, 3U, 4U, 4U, 5U, 6U, 2U, 1U, 2U, 9U, 6U,
  4U, 0U, 4U, 3U, 5U, 2U, 3U, 1U, 1U, 7U, 6U, 0U, 0U, 6U, 6U, 5U, 1U, 0U, 1U, 2U, 4U, 1U, 2U, 0U, 0U, 6U, 5U, 9U, 7U, 5U, 5U, 8U, 5U, 1U, 2U, 7U, 6U, 1U, 7U, 8U, 5U, 8U, 3U, 8U, 2U, 9U, 2U, 0U, 4U, 1U, 9U, 7U, 4U, 8U, 4U, 4U, 2U, 3U, 6U, 0U, 8U, 0U, 0U, 7U, 1U, 9U, 3U, 0U, 4U, 5U, 7U, 6U, 1U, 8U, 9U, 3U, 2U, 3U, 4U, 9U, 2U, 2U, 9U, 2U, 7U, 9U, 6U, 5U, 0U, 1U, 9U, 8U, 7U, 5U, 1U, 8U, 7U, 2U, 1U, 2U,
  7U, 2U, 6U, 7U, 5U, 0U, 7U, 9U, 8U, 1U, 2U, 5U, 5U, 4U, 7U, 0U, 9U, 5U, 8U, 9U, 0U, 4U, 5U, 5U, 6U, 3U, 5U, 7U, 9U, 2U, 1U, 2U, 2U, 1U, 0U, 3U, 3U, 3U, 4U, 6U, 6U, 9U, 7U, 4U, 9U, 9U, 2U, 3U, 5U, 6U, 3U, 0U, 2U, 5U, 4U, 9U, 4U, 7U, 8U, 0U, 2U, 4U, 9U, 0U, 1U, 1U, 4U, 1U, 9U, 5U, 2U, 1U, 2U, 3U, 8U, 2U, 8U, 1U, 5U, 3U, 0U, 9U, 1U, 1U, 4U, 0U, 7U, 9U, 0U, 7U, 3U, 8U, 6U, 0U, 2U, 5U, 1U, 5U, 2U, 2U,
  7U, 4U, 2U, 9U, 9U, 5U, 8U, 1U, 8U, 0U, 7U, 2U, 4U, 7U, 1U, 6U, 2U, 5U, 9U, 1U, 6U, 6U, 8U, 5U, 4U, 5U, 1U, 3U, 3U, 3U, 1U, 2U, 3U, 9U, 4U, 8U, 0U, 4U, 9U, 4U, 7U, 0U, 7U, 9U, 1U, 1U, 9U, 1U, 5U, 3U, 2U, 6U, 7U, 3U, 4U, 3U, 0U, 2U, 8U, 2U, 4U, 4U, 1U, 8U, 6U, 0U, 4U, 1U, 4U, 2U, 6U, 3U, 6U, 3U, 9U, 5U, 4U, 8U, 0U, 0U, 0U, 4U, 4U, 8U, 0U, 0U, 2U, 6U, 7U, 0U, 4U, 9U, 6U, 2U, 4U, 8U, 2U, 0U, 1U, 7U,
  9U, 2U, 8U, 9U, 6U, 4U, 7U, 6U, 6U, 9U, 7U, 5U, 8U, 3U, 1U, 8U, 3U, 2U, 7U, 1U, 3U, 1U, 4U, 2U, 5U, 1U, 7U, 0U, 2U, 9U, 6U, 9U, 2U, 3U, 4U, 8U, 8U, 9U, 6U, 2U, 7U, 6U, 6U, 8U, 4U, 4U, 0U, 3U, 2U, 3U, 2U, 6U, 0U, 9U, 2U, 7U, 5U, 2U, 4U, 9U, 6U, 0U, 3U, 5U, 7U, 9U, 9U, 6U, 4U, 6U, 9U, 2U, 5U, 6U, 5U, 0U, 4U, 9U, 3U, 6U, 8U, 1U, 8U, 3U, 6U, 0U, 9U, 0U, 0U, 3U, 2U, 3U, 8U, 0U, 9U, 2U, 9U, 3U, 4U, 5U,
  9U, 5U, 8U, 8U, 9U, 7U, 0U, 6U, 9U, 5U, 3U, 6U, 5U, 3U, 4U, 9U, 4U, 0U, 6U, 0U, 3U, 4U, 0U, 2U, 1U, 6U, 6U, 5U, 4U, 4U, 3U, 7U, 5U, 5U, 8U, 9U, 0U, 0U, 4U, 5U, 6U, 3U, 2U, 8U, 8U, 2U, 2U, 5U, 0U, 5U, 4U, 5U, 2U, 5U, 5U, 6U, 4U, 0U, 5U, 6U, 4U, 4U, 8U, 2U, 4U, 6U, 5U, 1U, 5U, 1U, 8U, 7U, 5U, 4U, 7U, 1U, 1U, 9U, 6U, 2U, 1U, 8U, 4U, 4U, 3U, 9U, 6U, 5U, 8U, 2U, 5U, 3U, 3U, 7U, 5U, 4U, 3U, 8U, 8U, 5U,
  6U, 9U, 0U, 9U, 4U, 1U, 1U, 3U, 0U, 3U, 1U, 5U, 0U, 9U, 5U, 2U, 6U, 1U, 7U, 9U, 3U, 7U, 8U, 0U, 0U, 2U, 9U, 7U, 4U, 1U, 2U, 0U, 7U, 6U, 6U, 5U, 1U, 4U, 7U, 9U, 3U, 9U, 4U, 2U, 5U, 9U, 0U, 2U, 9U, 8U, 9U, 6U, 9U, 5U, 9U, 4U, 6U, 9U, 9U, 5U, 5U, 6U, 5U, 7U, 6U, 1U, 2U, 1U, 8U, 6U, 5U, 6U, 1U, 9U, 6U, 7U, 3U, 3U, 7U, 8U, 6U, 2U, 3U, 6U, 2U, 5U, 6U, 1U, 2U, 5U, 2U, 1U, 6U, 3U, 2U, 0U, 8U, 6U, 2U, 8U,
  6U, 9U, 2U, 2U, 2U, 1U, 0U, 3U, 2U, 7U, 4U, 8U, 8U, 9U, 2U, 1U, 8U, 6U, 5U, 4U, 3U, 6U, 4U, 8U, 0U, 2U, 2U, 9U, 6U, 7U, 8U, 0U, 7U, 0U, 5U, 7U, 6U, 5U, 6U, 1U, 5U, 1U, 4U, 4U, 6U, 3U, 2U, 0U, 4U, 6U, 9U, 2U, 7U, 9U, 0U, 6U, 8U, 2U, 1U, 2U, 0U, 7U, 3U, 8U, 8U, 3U, 7U, 7U, 8U, 1U, 4U, 2U, 3U, 3U, 5U, 6U, 2U, 8U, 2U, 3U, 6U, 0U, 8U, 9U, 6U, 3U, 2U, 0U, 8U, 0U, 6U, 8U, 2U, 2U, 2U, 4U, 6U, 8U, 0U, 1U,
  2U, 2U, 4U, 8U, 2U, 6U, 1U, 1U, 7U, 7U, 1U, 8U, 5U, 8U, 9U, 6U, 3U, 8U, 1U, 4U, 0U, 9U, 1U, 8U, 3U, 9U, 0U, 3U, 6U, 7U, 3U, 6U, 7U, 2U, 2U, 2U, 0U, 8U, 8U, 8U, 3U, 2U, 1U, 5U, 1U, 3U, 7U, 5U, 5U, 6U, 0U, 0U, 3U, 7U, 2U, 7U, 9U, 8U, 3U, 9U, 4U, 0U, 0U, 4U, 1U, 5U, 2U, 9U, 7U, 0U, 0U, 2U, 8U, 7U, 8U, 3U, 0U, 7U, 6U, 6U, 7U, 0U, 9U, 4U, 4U, 4U, 7U, 4U, 5U, 6U, 0U, 1U, 3U, 4U, 5U, 5U, 6U, 4U, 1U, 7U,
  2U, 5U, 4U, 3U, 7U, 0U, 9U, 0U, 6U, 9U, 7U, 9U, 3U, 9U, 6U, 1U, 2U, 2U, 5U, 7U, 1U, 4U, 2U, 9U, 8U, 9U, 4U, 6U, 7U, 1U, 5U, 4U, 3U, 5U, 7U, 8U, 4U, 6U, 8U, 7U, 8U, 8U, 6U, 1U, 4U, 4U, 4U, 5U, 8U, 1U, 2U, 3U, 1U, 4U, 5U, 9U, 3U, 5U, 7U, 1U, 9U, 8U, 4U, 9U, 2U, 2U, 5U, 2U, 8U, 4U, 7U, 1U, 6U, 0U, 5U, 0U, 4U, 9U, 2U, 2U, 1U, 2U, 4U, 2U, 4U, 7U, 0U, 1U, 4U, 1U, 2U, 1U, 4U, 7U, 8U, 0U, 5U, 7U, 3U, 4U,
  5U, 5U, 1U, 0U, 5U, 0U, 0U, 8U, 0U, 1U, 9U, 0U, 8U, 6U, 9U, 9U, 6U, 0U, 3U, 3U, 0U, 2U, 7U, 6U, 3U, 4U, 7U, 8U, 7U, 0U, 8U, 1U, 0U, 8U, 1U, 7U, 5U, 4U, 5U, 0U, 1U, 1U, 9U, 3U, 0U, 7U, 1U, 4U, 1U, 2U, 2U, 3U, 3U, 9U, 0U, 8U, 6U, 6U, 3U, 9U, 3U, 8U, 3U, 3U, 9U, 5U, 2U, 9U, 4U, 2U, 5U, 7U, 8U, 6U, 9U, 0U, 5U, 0U, 7U, 6U, 4U, 3U, 1U, 0U, 0U, 6U, 3U, 8U, 3U, 5U, 1U, 9U, 8U, 3U, 4U, 3U, 8U, 9U, 3U, 4U,
  1U, 5U, 9U, 6U, 1U, 3U, 1U, 8U, 5U, 4U, 3U, 4U, 7U, 5U, 4U, 6U, 4U, 9U, 5U, 5U, 6U, 9U, 7U, 8U, 1U, 0U, 3U, 8U, 2U, 9U, 3U, 0U, 9U, 7U, 1U, 6U, 4U, 6U, 5U, 1U, 4U, 3U, 8U, 4U, 0U, 7U, 0U, 0U, 7U, 0U, 7U, 3U, 6U, 0U, 4U, 1U, 1U, 2U, 3U, 7U, 3U, 5U, 9U, 9U, 8U, 4U, 3U, 4U, 5U, 2U, 2U, 5U, 1U, 6U, 1U, 0U, 5U, 0U, 7U, 0U, 2U, 7U, 0U, 5U, 6U, 2U, 3U, 5U, 2U, 6U, 6U, 0U, 1U, 2U, 7U, 6U, 4U, 8U, 4U, 8U,
  3U, 0U, 8U, 4U, 0U, 7U, 6U, 1U, 1U, 8U, 3U, 0U, 1U, 3U, 0U, 5U, 2U, 7U, 9U, 3U, 2U, 0U, 5U, 4U, 2U, 7U, 4U, 6U, 2U, 8U, 6U, 5U, 4U, 0U, 3U, 6U, 0U, 3U, 6U, 7U, 4U, 5U, 3U, 2U, 8U, 6U, 5U, 1U, 0U, 5U, 7U, 0U, 6U, 5U, 8U, 7U, 4U, 8U, 8U, 2U, 2U, 5U, 6U, 9U, 8U, 1U, 5U, 7U, 9U, 3U, 6U, 7U, 8U, 9U, 7U, 6U, 6U, 9U, 7U, 4U, 2U, 2U, 0U, 5U, 7U, 5U, 0U, 5U, 9U, 6U, 8U, 3U, 4U, 4U, 0U, 8U, 6U, 9U, 7U, 3U,
  5U, 0U, 2U, 0U, 1U, 4U, 1U, 0U, 2U, 0U, 6U, 7U, 2U, 3U, 5U, 8U, 5U, 0U, 2U, 0U, 0U, 7U, 2U, 4U, 5U, 2U, 2U, 5U, 6U, 3U, 2U, 6U, 5U, 1U, 3U, 4U, 1U, 0U, 5U, 5U, 9U, 2U, 4U, 0U, 1U, 9U, 0U, 2U, 7U, 4U, 2U, 1U, 6U, 2U, 4U, 8U, 4U, 3U, 9U, 1U, 4U, 0U, 3U, 5U, 9U, 9U, 8U, 9U, 5U, 3U, 5U, 3U, 9U, 4U, 5U, 9U, 0U, 9U, 4U, 4U, 0U, 7U, 0U, 4U, 6U, 9U, 1U, 2U, 0U, 9U, 1U, 4U, 0U, 9U, 3U, 8U, 7U, 0U, 0U, 1U,
  2U, 6U, 4U, 5U, 6U, 0U, 0U, 1U, 6U, 2U, 3U, 7U, 4U, 2U, 8U, 8U, 0U, 2U, 1U, 0U, 9U, 2U, 7U, 6U, 4U, 5U, 7U, 9U, 3U, 1U, 0U, 6U, 5U, 7U, 9U, 2U, 2U, 9U, 5U, 5U, 2U, 4U, 9U, 8U, 8U, 7U, 2U, 7U, 5U, 8U, 4U, 6U, 1U, 0U, 1U, 2U, 6U, 4U, 8U, 3U, 6U, 9U, 9U, 9U, 8U, 9U, 2U, 2U, 5U, 6U, 9U, 5U, 9U, 6U, 8U, 8U, 1U, 5U, 9U, 2U, 0U, 5U, 6U, 0U, 0U, 1U, 0U, 1U, 6U, 5U, 5U, 2U, 5U, 6U, 3U, 7U, 5U, 6U, 7U, 8U,
  5U, 6U, 6U, 7U, 2U, 2U, 7U, 9U, 6U, 6U
}};
